Method and system for determination of one or more limbs of one or more toy devices

ABSTRACT

The invention relates to gaming devices, in particular to toys 
     The device contains a body which moving parts are coupled with. Inductance coils are attached to the inside of the body and the moving parts. The device is equipped with a means of measurement of mutual induction between the coils connected with a computing means designed for determination of mutual position of the specified inductance coils based on mutual induction values, and the computing means is connected to a means designed for creating effects perceivable by the user based on information on mutual position of inductance coils. The gaming device in another variant is physically divided into a controlling part which includes the said body and moving parts in which coils and a means of measurement of mutual induction between coils are located, and a controlled part which includes a means designed for creation of effects perceivable by the user.

RELATED APPLICATIONS

This application claims priority to, and the benefit of, co-pending U.S. Provisional Application No. 61/414,792, filed Nov. 17, 2010, for all subject matter common to both applications. This application also claims priority to, and the benefit of, co-pending Russian Application No. 2011126009, filed 24 Jun. 2011, for all subject matter common to both applications. The disclosures of said applications are hereby incorporated by reference in their entirety.

FIELD OF THE INVENTION

The present invention relates to gaming devices, in particular to toys imitating moving objects, such as anthropomorphic and zoomorphic creatures, fictional and fairy-tale creatures, and pieces of equipment such as excavators, cranes, robots and transformer robots, and other devices having toy forms with individually movable parts.

BACKGROUND OF THE INVENTION

Toys for preschool children are the most fast-growing segment of the game-and-toy market (CAGR 15-20%). However, this segment suffers from acute shortage of interactive products and interface solutions based on peculiarities of age psychophysiology of little users.

It is difficult for little children to fully appreciate the joy of using a button remote control. It is something too abstract for them. The game-based way of mastering the reality characteristic for a child requires considerably deeper involvement of the child's own tactile and proprioceptive sensitivity. A child tries everything with his or her teeth, by touch, by muscular sense. Children have always played dolls (tin soldiers) trying to make the toys make appropriate body movements. A child takes a doll's hands in his or her own and the doll claps; a child takes a horsy and the horsy skips; a child takes a knight with a sword and makes a movement as though the knight slashes. Even when a child is rather passively watching a cartoon while holding a toy, he or she makes active movements with this toy which correspond to the behavior of the character on the screen. It is a basic need determined by the age psychophysiology.

On the other hand, today the virtual reality in the form of cartoons, TV-shows, and computer games plays a very important part in the life of a child. The operative connection of this reality with the real and tangible world suggests itself and brings up the issue of a more natural interface solution (as compared to existing keyboards, remote controls, joysticks etc.). At the current stage of technical development it is difficult to imagine a more suitable object to be transformed into a universal input/output device than an actual physical toy. This is significantly promoted by the extent of children's toys interactivity which increases with every year.

Traits of magical consciousness which are immanent to a child make an interactive toy the most natural conductor and intermediary connecting the virtual and the direct sensual worlds of a child. Communications with a doll and through a doll are equally natural for children communicating with each other on a playground, as well as for their interaction with computer characters.

This important fact has been realized by leaders of the toy industry who have already taken certain steps towards its commercialization. For instance the WebKinz plush doggies introduced in 2005 had a unique identifier for entering online game environment where they could develop and communicate. In 2007 WebKinz attracted 3.6 million unique users. A similar solution has been offered for communication of Barbie doll users who in 2006 and 2007 created 2 million unique online accounts each year. These instances of virtual representation of physical toys are not exclusive. There is a whole number of similar products such as Bratz World, Rescue Pets, Club Penguin, Web Neopets, and others including numerous Disney characters. The next step was the FAMPS interface dolls introduced by Mattel Company in 2010. The innovation is that they do not require to key-in the identification number: the doll is placed in a ring which contains a coil and is connected by a cable with a computer USB port. Identification and entry into the virtual environment are made automatically. However, the founders of FAMPS have not managed to depart from the button interface: switching of emotional conditions of a doll is made by pressing the corresponding keys on the ring.

The basic problem of FAMPS—and certainly WebKinz which preceded them—is their primitiveness. In fact they are nothing but door-keys for entering virtual environment. They do not provide true interactivity. Connection of a voice interface solves a problem only partly. It is important—especially for little children—that communication through virtual environment is not limited by abstract/symbolical or verbal channels but as much as possible involves motor activity and stimulates “muscular pleasure” (I. P. Pavlov) beneficial the child.

The required additional—and in many applications, basic—way of communication can be manipulation of an interface doll. The child takes the doll and makes it make all the movements which the child wants the virtual character to make or the virtual opponent to react to. For example while holding the doll's hands the child can make it clap, cover its face with the hands, beckon, scratch the back of the head, and make many other eloquent gestures. The interface doll can walk, jump, dance, fight—and by doing so, control the behavior of the corresponding screen character. Communication with the representing device should preferably be wireless and should not require any other devices to control the screen action except the doll itself The claimed invention is aimed at realization of this task.

Certainly, the most expressive plastique and the most precise action require considerable dexterity from puppeteer/manipulator. But first of all this is exactly what we need: we develop fine motor functions and other useful skills of the child. Secondly, no special dexterity is required in the very beginning: even the simplest movements of the doll's limbs and head can be quickly mastered by a little child and provide for considerable expressive variety especially if they are supported by advanced interpretation and representation software. Thirdly, the interface doll can be a motorized automatic machine (“robot”) which will make certain movements itself depending on applied manipulations.

The toy robot (as well as other interactive toys), in turn, can be controlled by and/or co-operate with, a manipulated interface doll. The “Toy Story” spirit (together with its numerous predecessors) has been knocking at the door for a long time demanding an embodiment. The interface doll opens this door wide.

Unlike the situation in the market of finished products, approaches to creation of the interface doll at the level of patent solutions go much further. The common shortcoming of these solutions, however, is their incompleteness which probably accounts for the fact that they have not yet been developed into end products.

The patent U.S. Pat. No. 6,290,565 Interactive game apparatus with game play controlled by user-modifiable toy (1999, Nearlife, Inc.) describes a physical toy in the form of a little fish or an anthropomorphic creature which can be composed of different parts each of which is identified when attached to the main part. The toy's double is shown on the computer screen; its properties and the way it acts in the virtual environment change depending on what parts the physical toy is composed of. The computer connection is mentioned without a concrete determination that some of interchangeable parts can have sensors the data send by which can vary depending on applied manipulations.

The patent U.S. Pat. No. 5,752,880 Interactive doll (1995, Creator Ltd.) describes an interactive doll controlled from a computer on a radio channel; the movement of the toy or a part thereof generated by a command coming from the computer by means of a feedback mechanism, influences the system condition and computer control of the doll.

The patent U.S. Pat. No. 7,137,861 Interactive three-dimensional multimedia I/O device for a computer (2003, Carr, Geldbauch) describes an anthropomorphic figure with moving body parts connected to the base station which, in turn, is connected to the computer. The figure is intended to attract the user's attention to the system events (printer status, received email etc.). After each of such events the figure gesticulates and makes various sounds. The figure can be also used as an input/output device in a computer game representing a game character.

Unlike the present invention, in none of the above-mentioned patents U.S. Pat. No. 6,290,565, U.S. Pat. No. 5,752,880, U.S. Pat. No. 6,159,101, U.S. Pat. No. 7,137,861 is the exact position of moving parts relative to the doll's body determined or the principle of mutual magnetic induction used.

In the patent U.S. Pat. No. 7,081,033 Toy figure for use with multiple, different game systems (2000, Hasbro, Inc.) the toy character is used primarily as a multipurpose medium for transferring the information on the current game state and the character itself, between different hardware game platforms. The character can change the game status, but is not used for operational game control. Magnetic induction can be used to transmit information between the character and the gaming device.

In patent U.S. Pat. No. 6,471,565 Interactive Toy (2001, Simeray) electromagnetic induction is used for identification by an interactive doll of its accessories. In particular, the baby doll recognizes its pacifier or its rattle and reacts to them in different ways.

The patent U.S. Pat. No. 7,361,073 Motion responsive toy (2005, Mattel, Inc.) describes a toy in the body of which an electromagnetic-field sensor and effectors—e.g. LEDs—are installed. An electromagnetic-field source in the shape of, for example, a magic wand, is brought close to the toy's body and detected by the toy's sensor. Depending on the magnitude of the detected magnetic field the output signal is changed—for example the LED lighting modes are switched. The magical effect is that the toy interactively reacts to the magic wand moved over it.

The patent application US 2007/0015588 A1 Game information, information storage medium and game apparatus (2004, NAMKO, Ltd.) offers a tablet which uses the electromagnetic induction method and character figures with built-in coils for realization of preinstalled communication with the use of the electromagnetic induction method when these figures are placed on the tablet. The tablet determines the change of the figures position and the direction in which they move, and the computer system represents the movement of the corresponding characters. The figures on the tablet can collide simulating a battle and cause the computer characters to fight.

Numerous coils are located in the tablet; the device determines which one of them has the highest magnetic induction with the figure; the figure is considered to be located near that coil. A system like that allows determination of a fixed number of positions which is determined by the number of coils which cannot be too large; the object being detected has to be located near the tablet surface. This method cannot be applied for determination of the doll's limbs position.

U.S. Pat. No. 6,159,101 Interactive toy products (1998, Tiger Electronics, Ltd.) discloses an anthropomorphic doll with a screen on its body equipped with sensors which can detect limb movements. The product is a video-gaming device; the game character is controlled through manipulations with the doll's limbs; the device provides both the game display on the integrated screen and data transfer to external game console with the game displayed on a big screen.

The patent describes the sensors detecting limb movement as buttons built into a joint, or potentiometers. There is no mention of the possibility of measurement of limb position by means of the method based on mutual induction disclosed in the present specification.

The sensors specified in the U.S. Pat. No. 6,159,101 patent as well as most of other sensors known given the present state of the art require rigid joints to be realized in the doll, which is extremely undesirable because these joints lack the required durability given the intensity of the child's play with the toy. Buttons and potentiometers realize detection of only one degree of freedom of a limb and on condition that the limb is moving as a single unit. Realization of detection of position of a limb consisting of an upper arm and a forearm by means of buttons or potentiometers will be extremely bulky as opposed to the realization disclosed in this claim.

The realistic nature of modern games involving actions in a simulated three-dimensional world requires a new means to control the virtual character providing effective control of the limbs. The modern user is no longer satisfied with a schematic two-dimensional figure capable of a few pre-drawn actions. Thanks to development of three-dimensional graphics users expect to see a three-dimensional game character which is also as easy to control as the user's own body, and the solution disclosed in this claim is substantial progress towards that goal.

SUMMARY

The present invention primarily solves the problem of determination of position of moving parts relative to a stationary body. The technical result of the use of this invention is enhancement of functional features: all above-mentioned functions realized by various devices as well as obtaining of information on the attitude of the elements, are performed by a single gaming device.

The technical result is achieved by the fact that the gaming device which contains a body, at least one moving part coupled with the body, a computing means, and a device controlled by the computing means and creating effect perceivable by the user in at least one designated moving part, includes at least one inductance coil installed in the body; the device is equipped with a means for measurement of mutual induction between coils, this means is connected to the computing means and designed for determination of mutual position of the said inductance coils based on mutual induction values received from the said measurement means, and is connected to a device designed for creation of effects perceivable by the user based on the information on mutual position of inductance coils.

The gaming device is capable of detection of five degrees of freedom of the moving part given that there is only one coil on the moving part and that the rotation of the moving part about the coil axis is ignored.

The gaming device has a two-section limb design where the first section is coupled with the body and the second one is coupled with the first section; at least one coil is installed in the second section of the limbs and the computing unit has the capability to determine the position of the first section of the limbs based on the known position of the second section ignoring the rotation of the first section about the line connecting its two attachment points.

The moving part has an axis the rotation about which is not substantial from the point of view of formation of effects perceivable by the user; the coil is positioned in such a way that its axis coincides with or is parallel to, the said axis of the moving part.

The gaming device limits the travel of the coil center to a small area within the limits of which the position of the coil center can be considered invariable and known; thus only the direction of the coil axis has to be calculated.

The coil is located in the moving part in the immediate proximity of the point where the moving part is attached to the body.

The travel of the moving part relative to the body is limited in such a way that its position can be completely determined with the help of one coil located on it.

The gaming device can be made in the form of an anthropomorphic or zoomorphic object; the coil is installed in the moving part (head) in such a way that its axis is directed from the crown to the nose while mechanical design of the neck is such that rotation of the head about this axis is possible only together with the coil travel.

The gaming device includes at least one moving part which has six degrees of freedom in which two non-coaxial coils are installed which allows determination of all degrees of freedom.

The controlled device is located in the body or in the moving part.

The design of the controlled device envisages creation of sound and/or other effects perceivable by the user. The effects thus created include speech and/or mimic imitation; these effects include at least one independent movement by at least one moving part.

The gaming device design includes the capability of the moving part movement adjustment by means of a feedback signal generated based on information on the position of that part.

The gaming device is equipped with additional means of determination of actions of external objects and/or the user, with means of counter-action and/or of assistance and/or of movement initiation in response to actions of external objects or the user.

The gaming device design includes the capability to change the behavior of the gaming system in accordance with a specified algorithm in response to actions of external objects or the user.

The gaming device design includes the capability to determine the character of user's manipulations with the body based on trajectory of the moving part movement caused by gravity and inertia relative to the body.

The gaming device design includes the capability to determine the body deviation from the vertical position based on trajectory of the moving part movement relative to the body.

The gaming device design includes the capability to determine the body acceleration based on trajectory of the moving part movement relative to the body.

The gaming device includes at least one moving part coupled with the body with a capability of this part to rotate about the corresponding axis or point of the body, which provides the possibility to determine rotation of the body in inertial frame.

The gaming device includes an accelerometer connected to the computing unit; the computing unit determines deviation of the body from vertical position, acceleration of the body including detection of abrupt jerks of the device, based on the accelerometer data.

The gaming device includes an additional means for determination of the device body travel in space.

The gaming device includes an additional means providing determination of the body rotation in inertial frame.

The gaming device is physically divided into a controlling part which includes the body and the moving parts with integrated coils and the means for measurement of mutual induction between the coils, and a controlled part which includes the device for creation of effects perceived by the user, the computing means is located in the controlling part or in the controlled part; both parts contain means to communicate with one another via communication channel.

The controlled part is a device for playing video games; control of one of the game characters is performed by manipulations with the controlling part.

The gaming device design includes the capability of the video-game character to reproduce the movements of the device moving parts.

The gaming device design includes the capability to form commands for video-game control based on the corresponding movements of the moving parts relative to the body.

The gaming device design includes the capability to change the behavior of the gaming system according to the specified algorithm in response to the actions of external objects and/or the user.

Another aspekt of invention is a gaming system includes a first toy device comprising at least one inductance coil situated in or on the device for emitting variable magnetic field and a second toy device comprising two or more inductance coils stationary fixed in or on the device for determining spatial position of the coil of the first toy device relative to the coils of the second device. The position determination is based on mutual induction values measured by the means of the second device. Effecting means coupled to the second toy device produce effects perceivable by a user.

BRIEF DESCRIPTION OF THE DRAWINGS

These and other characteristics of the present invention will be more fully understood by reference to the following detailed description in conjunction with the attached drawings, in which:

FIG. 1 depicts a preferred embodiment of a gaming device, according to aspects of the present invention;

FIG. 2 depicts an alternative embodiment of a simplified gaming device, according to aspects of the present invention;

FIG. 3 depicts a gaming device in use with a gaming console coupled to a presentation component for graphically displaying information, according to aspects of the present invention;

FIGS. 4 through 5 depict a block diagram of alternative embodiments of an electronic module for inclusion in gaming devices according to the present invention, according to aspects of the present invention;

FIG. 6 depicts a method of determination of inclination and rotation of the gaming device, according to aspects of the present invention;

FIG. 7 depicts a block diagram of two devices in communication with one another, according to aspects of the present invention;

FIG. 8 depicts the two devices of FIG. 7, further wherein one of the two devices includes a plurality of emitting coils and the other of the two devices includes a plurality of receiving coils, according to aspects of the present invention;

FIG. 9 depicts the two devices of FIG. 8, further including one or more components digital processing, transmission, and conversion of signals, according to aspects of the present invention;

FIG. 10 depicts a block diagram of example system of digital processing components for processing the signal in order to determine positions of a plurality of emitting coils based on measurements of induced currents in a plurality of receiving coils, according to aspects of the present invention;

FIG. 11 depicts an example method of the digital processing functions of the system of FIG. 10, according to aspects of the present invention;

FIG. 12 depicts two example devices each engaged in position determination of its own limbs and position determination of limbs of the other device, according to aspects of the present invention; and

DETAILED DESCRIPTION

The preferred embodiment of the gaming device is depicted in FIG. 1 includes a body 1 having a toy form to which the following moving parts are movable coupled: a head 2, a first section of the limbs 4 (upper arm for upper limbs, thigh for lower limbs), a second section of the limbs 3, and an external device for creation of effects perceivable by the user 5. In the body 1 and moving parts 2, 3 there are inductance coils 6, 7, 8 respectively; coils 6 are the receiving ones and coils 7, 8 are the emitting ones. The preferred number of receiving coils is six, emitting coils—one in the head 2 and one in the second section of the limbs 3. The electronic module 9 located in the body 1 contains a means for measurement of mutual induction between receiving coils 6 and emitting coils 7, 8, and a computing means for determination of mutual position of inductance coils 7, 8 relative to coils 6 based on mutual induction values received from the said measurement means. These data are used for determination of position of the moving parts 2, 3 relative to the body 1. The electronic module 9 is connected to receiving coils 6 and emitting coils 7, 8 by cables (not shown in the drawing). The electronic module 9 and the external device 5 which creates effect perceivable by the user are connected by a wireless communication channel.

The external device 5 realizes the video game; the real device consisting of the body and the moving parts is used for control of the virtual video-game character 12. The device functions as follows.

The electronic module 9 has two main functions: it measures the mutual induction of each emitting coil with each receiving coil and calculates the position of each emitting coil relative to the receiving coils based on the measured mutual induction. The results of these measurements and calculations allow determination of the position of the moving part relative to the body and thus, realization of the task set by this invention.

Two main embodiments are envisaged for the use of information on position of the moving parts. First, the toy capable of determination of its moving parts position can be an interface for control of a character in computer and video games as shown in FIG. 3 where a child is playing a video game using the toy 13 to control the video-game character 12. Second, an intellectual doll or a robot can use this information in order to select its response (e.g. in case of a talking doll to select the phrase to pronounce).

Let us consider the first embodiment of the use of the information on the position of the limbs with the help of two examples: the preferred one (FIG. 1) and the simplified one (FIG. 2).

The electronic module 9 goes over emitting coils 7, 8 one after another measuring their mutual induction with each receiving coil 6. At any moment of time the mutual induction of one emitting coil and one of receiving coils is measured. As stated above in the preferred device embodiment under consideration six receiving coils 6 are installed in the body 1, whereas five emitting coils 7, 8 are installed on the moving parts 2, 3. Measurement of six mutual inductions of emitting coils 7, 8 with all receiving coils 6 allows calculation of the position of these emitting coils 7, 8 relative to emitting coils 6. Determination of the position of emitting coils 7, 8 relative to receiving coils 6 ensures determination of the position of the moving parts 2 and 3 relative to the body 1.

Determination of the position of a coil means determination of three co-ordinates of its center and the two co-ordinates which set the coil orientation in space. Thus five of the six possible degrees of freedom of a solid body position in space are determined; the sixth degree of freedom which is the coil rotation about its own axis is not determined. Rotation of coil 8 and accordingly of the second section of the limbs 3 about own axis 10 is not detected because during the coil rotation about its own axis its mutual induction with any other coil does not change in the first approximation.

In determination of positions of the moving parts 2, 3, 4 the forthright approach is the obvious one. It is based on two non-coaxial coils installed on each moving part. However, one coil on the moving part can be enough. First, if the moving part is sufficiently symmetrical to the axis—as is the second section of the limbs 3—the coil can be located coaxially with the axis 10 of the moving part. In this case the rotation of the second section of the limbs 3 about the symmetry axis 10 will not be detected, which will not be negatively perceived by the user because such rotation is considerably less informative as compared to other movements of a limb, it does not represent important gestures, often is not physiological, and can be ignored.

Another approach is to restrict the movement of a solid body and to reduce the number of degrees of freedom to five or less. For that the rotation about own axis has to be inevitably connected with the travel of the coil center. In terms of mechanics such restriction is called coupling. With such coupling one coil will allow complete determination of the position of this moving part because rotation without travel of the center is impossible, and this travel of the center can be determined. In the preferred embodiment this approach is used for determination of the position of the head 2. The emitting coil 7 is located in the moving part (the head 2) in such a way that the coil axis goes from the crown to the nose. The mechanical design of the neck restricts the rotation of the head 2 about this axis but does not restrict the head 2 tilts to the left or to the right (which are detected based on the coil 7 travel). As the result the head 2 position including nods and tilts is determined based on position of coil 7.

Manufacture of toys usually involves simple mechanical solutions and the coupling of the head with the body can be rather weak. In this case some rotation of the coil about its axis without any travel is possible; such rotation will not be detected. Since this rotation matches the rotation of the head about the axis passing from the crown to the nose, such limitation does not make the product worse from the user's point of view as long as it is kept within reasonable limits by the coupling.

In the preferred embodiment the device contains one emitting coil 8 installed in the second section of the limbs 3 which allows determination of the position of the first section of the limbs 4. Thus knowing the position of the coil 8 it is possible to determine the position of the second section of the limbs 3, and knowing the position of the limbs 3 it is possible to determine the position of the first section of the limbs 4 because this section 4 connects the second section of the limbs 3 with the body 1. The rotation of the first section 4 about the axis 11 connecting the points where this section is attached to the body and to the second section 3, is not determined. These rotations are not informative and can be ignored similar to the rotations of the second section 3 relative to the axis 10.

Thus the emitting coils 7, 8 ensure determination of the position of all moving parts 2, 3, 4. In the example under consideration the possibility of determination of the limbs of the third section (hands and feet) is not shown but for a skilled in the art this is obvious based on the above.

In toys containing a large number of moving parts additional emitting coils are used for determination of position of these parts. For instance, in a toy imitating an animal a coil can be installed in the tail for determination of its position. The only requirement is the wired connection of the emitting coil with the electronic module in the body. The way the moving part is attached to the body may vary depending on the specific embodiment.

Shape, dimensions, and location of the coils play an important role in ensuring the possibility to determine the position of the emitting coils and measurement accuracy. In the example under consideration six receiving coils 6 are grouped in two blocks each including three coils coiled orthogonally to each other on a cube with 6-cm edges. When the toy is in the vertical position, the top and bottom edges of the cube are horizontal. One cube is placed above the other and rotated relative to the first one about the vertical axis (FIG. 1) by 45 degrees; there is a 1-cm gap between the cubes.

Shape, dimensions, and location of the coils can be selected by a skilled in the art in the field of physics of variable magnetic fields or be selected with satisfactory results by an electronics engineer.

After determination of the position of the moving parts 2, 3, 4 relative to the body 1 the electronic module 9 by means of a wireless communication channel transmits the information on the position of the moving parts 2, 3, 4 relative to the body 1 to the external device 5.

The mutual induction is measured as follows.

The block diagram of the electronic module is given in FIG. 4. The emitting coil (EC) is energized by a sinusoidal signal; in the preferred embodiment the sinusoidal signal is generated by a circuit consisting of a DAC and a bandpass filter (F). DAC generates a signal with the selected frequency; the band filter tuned to the same frequency suppresses culprit frequencies present on the DAC output, primarily multiple frequencies. In the preferred embodiment such signal is amplified and is directed to demultiplexer (DM) which connects the amplifier output to the selected emitting coil. The signal frequency in the preferred embodiment is in the 100-500 KHz range; however it can be selected out of this range as well.

The selected energizing frequency of the transmitting coil is different for each toy model and in the preferred embodiment of the device is fixed at the factory. It allows the user to have a set of toys and to play with them simultaneously. Since the frequencies are different the toys will not jam one another even when placed together.

The alternating current in the emitting coil creates a variable magnetic field which, in turn, induces a variable electromotive force EMF in the receiving coil (RC). The signal from coil is amplified in block (A) and directed to the ADC input to be transformed into the digital format. Then the information is processed in the digital computing means (C). The digital computing means performs the control of induction measurement, transmits the required digital data to the ADC, receives data from the ADC and performs the calculations to determine the position of the coils. The received data on the position of the moving parts are transmitted by the computing means C to the device which creates effects perceived by the user, by means of the connection unit (not shown in FIG. 4).

In the preferred embodiment one ADC is used to measure the signal from of all coils. For this purpose between the coils and the amplifier a multiplexer (M) is installed which connects one of the coils to the amplifier. The measurement cycle is performed by turns for each receiving coil.

The ADC captures the signal from the receiving coil and converts it to the digital format. In the preferred embodiment the ADC sampling rate is four times higher than the frequency fed to the emitting coil. Both frequencies are bound to the frequency of the common clock generator. The DAC clock frequency and the ADC clock frequency are the frequency of the common clock generator divided by the corresponding coefficient. It ensures the strict synchronicity of the frequency of the signal fed to the coil and the ADC working frequency.

Calculation of quadrature components of the incoming harmonious signal is performed during mutual induction measurement. For improvement of the signal/noise ratio the data from ADC are accumulated for numerous periods. This operation is described in more detail below.

Let's designate the accumulated data as S(n) where n is the indication number which can vary from 1 to M*4 where M is the number of accumulated periods of the signal.

The following calculations are made according to these data:

R=Σ(S(i*4)−S(i*4+2))/2*M, for i from 1 to M

I=Σ S(i*4+1)−S(i*4+3))/2*M, for i from 1 to M   (1)

The incoming signal phase φ can be calculated from the ratio

R=L cos(φ)   (2)

I=−L sin(φ) where L is the value proportional to the required mutual induction.

The mutual induction magnitude A can be calculated according to the formula

A=sqrt(R̂2+Î2)   (3)

Indeed, let's assume that

S(t)=L*cos(2*pi*t/T+φ),   (4)

where T is the period of the emitted frequency. In this formula T is strictly fixed and will be cancelled later; L depends on the mutual position of the coils, and φ depends on the device design and not on the coil position.

Since the ADC working frequency is four times higher than the emitted frequency the indication which has the number i is performed in time i*T/4, which leads to the following:

S(i)=L cos(pi*i/2+φ),

Substituting it into the formulae (1) we get the following:

R=L cos(φ)

I=−L sin(φ), i.e. formula (2).

Substituting the obtained forms for R and I into the formula (3) we get A=sqrt(L̂2), i.e. A is an absolute value of L, and this value does not depend on the φ phase.

It is not possible to determine the sign of L from these formulae when the φ phase is unknown, because both changing the sign of L and shifting of φ by 180 degrees have the same effect: the received signal is inverted. In order to determine the sign of L it is necessary to limit the possible range of φ.

As it has already been mentioned φ is determined only by the device design and does not depend on the position of the coils. Let us assume that the signal fed to the DAC has the following form:

T(t)=A cos(2*pi*t/T+θ),

then φ is the sum

φ=θ+Δ

In this sum Δ is determined by the design of the electronic circuitry of the device and includes for example such components as the output filter shift, the π/2 shift of the EMF in the receiving coil relative to the current in the emitting coil, the phase shift of the amplifier before the ADC etc. These values can vary from one device to another or for one device during operation; they can also vary for one device on different receiving coils. θ is set by the software and therefore in the preferred embodiment θ is set equal in value to the typical Δ and with the opposite sign which leads to φ=θ+Δ being close to zero. By methods known in the field of design it can be ensured that in the worst case the deviation of φ from zero does not exceed n/2 on any device of the series under any operation conditions intended for the toy.

In this case cos(φ) is always bigger than zero. It means that the sign of the mutual induction matches the sign of R. The mutual induction magnitude is calculated according to formula (3); the possible deviations of the φ phase do not influence the accuracy of L calculation because the φ phase is not included in formula (3).

As a result the mutual induction magnitude equals the A value obtained according to formula (3), and the sign is the same as the sign of the R value calculated according to formula (2).

In order to obtain the result in conventional units e.g. in C the induction calculated by this method has to be multiplied by a certain coefficient which in its turn can be calculated based on the device design. However, this is not required because the preferred algorithm given in this claim uses a calibration procedure, and calibration coefficients are saved in the same units which are provided by the above method.

During the development of the tract which receives the signal from the coil it is necessary to take into account that the amplitude of the signal on the coil can vary significantly; it is caused by the considerable decrease of the mutual induction with distance. For geometry given in FIG. 1 the signal on the receiving coil varies more than 100 times depending on the limb position. Therefore it is necessary to ensure a wide dynamic range of the tract which receives the signal from the coil. In the preferred embodiment it is realized by using an amplifier with discretely controlled gain before ADC. The computing means which analyzes the value of the signal coming from the ADC controls the amplification coefficient of this amplifier.

Mutual induction of each pair of emitting and receiving coils is measured similarly. The set of mutual inductions of a specified emitting coil with all receiving coils constitutes the result of this procedure.

The algorithm of calculation of the position of the coils located on the moving parts, receives a set of mutual induction values Lij where i is the number of the emitting coil and j is the number of the receiving coil, as initial data.

It is known from general physics that mutual induction has a property of Lij=Lji, i.e. mutual induction measured while the current is fed to the coil i and EMF is measured on coil j, equals the induction measured while the current is fed to the coil j and EMF is measured on coil i. Therefore it is not important for calculations how the mutual induction is measured, whether the receiving coils are located in the body and the emitting ones are located on the moving parts or vice versa.

Let us assume that the receiving coil has coordinates x, y, z, and a unit direction vector D=(Dx, Dy, Dz). The main postulate which the calculations are based on is

Lij(x,y,z,Dx,Dy,Dz)=LCxij(x,y,z)*Dx+LCyij(x,y,z)*dy+LCzij(x,y,z)*Dz,   (5)

where

LCxij(x,y,z) is the mutual induction between coils i and j on condition that the coil j is directed along the X axis,

LCyij(x,y,z) is the mutual induction between coils i and j on condition that the coil j is directed along the Y axis,

LCzij(x,y,z) is the mutual induction between coils i and j on condition that the coil j is directed along the Z axis.

This postulate can be substantiated more easily if we assume that the emitting coils are located on the body and the receiving coils are located on the moving parts.

Indeed, let the emitting coil create the field B in point x, y, z with unit current. Then in the assumption that the field is homogenous for characteristic coil size

Φ=S*(B,D)=(Sj*Bi,D),   (6)

where D is the unit vector of the coil direction, and S is the effective area of the coil which equals the area of a wind multiplied by the number of winds.

If we determine that Lcxij=Sj*Bix, Lcyij=Sj*Biy, LCzij=Sj*Biz and substitute into the formula 6, we get the formula 5.

This formula substantiated based on the location of the emitting coils on the body and the location of the receiving coils on the moving parts, is also correct in the opposite case, based on the known property of equality of mutual inductions.

This formula is correct if we assume that the field in the proximity of the receiving coil is homogeneous which obviously is not the case in this instance. The distance to the emitting coil by the order of magnitude is comparable to the emitting coil itself; it exceeds the size of the receiving coil only by one order of magnitude, therefore the field has to be non-homogeneous. This inevitably leads to errors in determination of position and direction of the coil according to the method disclosed in this claim, as has been observed on the prototype. However, notwithstanding the fact that the standard scientific requirements for the use of this approximation have not been met, the errors turned out to be acceptable for this application, and the disclosed invention has vast capabilities in terms of its practical application.

The functioning of this algorithm requires that the functions Lcxij(x,y,z), Lcyij(x,y,z), LCzij(x,y,z) are known. In the preferred embodiment we select a finite set of points (x, y, z) for which these values are obtained by means of experimental measurement during the calibration procedure. The points are selected to evenly cover the area where the limb movement is possible.

Initial data for this algorithm is a set of mutual inductances Lij. In illustrative embodiments, this includes thirty “variants” of data, or thirty different values Lij, one for each combination of emitting coil and receiving coil. In alternative embodiments, simpler systems of equations can be used, e.g., such that fewer degrees of freedom are being determined and such that the system of equations can be solved with a smaller set of mutual inductances Lij.

The result of the operation of the electronic module algorithm is the determination of the position of the coil center coinciding with one of the points of the set, and the coil direction Dx, Dy, Dz, with the limitation that Dx̂2+Dŷ2+Dẑ2=1.

If simplified this algorithm consists of the following steps:

-   -   1. All points for which the calibration procedure has been         performed are gone over; for each point step 2 is applied.     -   2. For the next point (x, y, z) the most plausible direction Dx,         Dy, Dz is calculated with which the mutual inductions according         to the above formulae have the least mean-square deviation from         the ones fed to the algorithm input. The obtained direction and         mean-square deviation are saved to memory.     -   3. Among the saved values the minimal mean-square deviation is         sought, the direction at which this deviation was achieved is         taken out, and the point for which it was obtained, is         determined.

The result of the electronic module operation is the determination of the direction and the coordinates obtained in step 3, i.e. the ones corresponding to the minimal mean-square deviation obtained during all step 2 iterations.

Let us consider step 2 in more detail. During this step the most plausible direction of the coil with the specified position (x, y, z) is sought. The selected position is substituted into the formula (5); into the left part of the formula we substitute the values fed to the algorithm input (i.e. measured experimentally), and the formula turns into the system of linear equations with unknown Dx, Dy, Dz. Besides the linear equations the system includes one non-linear equation Dx̂2+Dŷ2+Dẑ2=1. The system has fewer unknowns than equations and therefore in the general case does not have a solution. This system is solved by the least-squares method which provides exactly what is required in step 2.

The actual position of the coil center certainly does not exactly coincide with the position found by the algorithm. The maximum coordinate error amounts to about a half of the maximum distance between calibration points. In the preferred embodiment the area of the possible limb movement was divided into cubes with the edge length of 2 cm; the calibration points were selected on the tops of the cubes. Thus the maximum distance between the coil center and the calibration point is about 1.7 cm; the coordinate determination error connected to the calibration grid size is approximately equal to this value.

Besides the described embodiment of the device realization as an anthropomorphic creature the technical solution can be realized by other embodiments, for instance animals, exotic snakes, octopuses, spiders, pieces of equipment (cranes, excavators, transformer robots).

FIG. 2 shows an embodiment of the simplified device in which only the second limb section 3 movements are imitated.

In the simplified embodiment the limbs 3 move as single unit; there are no analogs of elbow or knee joints. All movements of these limbs 3 can be considered as turns about a certain point in the place where the limb 3 is attached to the body 1; the limb 3 has only three degrees of freedom. One of the degrees of freedom is the rotation of the limb about its own axis, but it is ignored for the same reasons as in the preferred embodiment. The coil 8 is installed coaxially with the axis of the limb 3 as close as possible to the point of rotation of the limb 3 related to the body 1. As the result during any movements the coil 3 stays within a certain small area and therefore its translational movement can be ignored; it is assumed that the coil j is always located in a certain point xj, yj, zj. A task arises to determine the coil orientation at the given position, i.e. to determine the coordinates given two degrees of freedom. In order to solve this simplified problem three coils 6 in the body 1 are used. Theoretically the number of the receiving coils 6 can be reduced to two. The same way as in the preferred embodiment the electronic module 9 performs the functions of measurement of the mutual induction of the coils 8 and 6 and the functions of a computing means determining the position of the coils 8 relative to the coils 6 based on the measured mutual induction values. This embodiment uses a simplified embodiment of calculations disclosed in the description of the preferred embodiment. The set of points in which Lcxij(x,y,z), LCyij(x,y,z), Lczij(x,y,z) are determined by calibration is limited for the specified coil j to a single point xj,yj,zi in the proximity of which the coil always remains. If the set of points in the disclosed algorithm is limited to a single point, steps 1 and 3 are not required, only step 2 is performed.

The advantage of this embodiment is simplicity of the design, simplification of calculations and interference immunity. The interference immunity is ensured by the fact that the coils 8 in this embodiment do not move away from the device body 1.

Skilled in art can construct many other embodiment with coupling which decrease degree of freedom of moving part. In such cases number of receiving coil can be decreased too.

For example many dolls has arm with only one degree of freedom, therefore one receiving coil can be adequate.

For each character a unique frequency is selected and fixed at the factory. As the number of toy characters can potentially be enormous the amount of available frequencies can be not sufficient. Also on the frequency fixed at the factory, on location of the toy operation there can be interference and it would be expedient to use a different interference-free frequency. To exclude the said shortcomings an alternative embodiment is offered which selects a frequency free from interference hindering the toy operation.

For this purpose a time interval is reserved within the device operation cycle during which the device only receives the signal without emitting one. If in this interval the amplitude of the received signal is lower than a certain threshold, then this frequency can be used and the device continues to function using this frequency. If in the reserved interval the amplitude of the received signal exceeds this threshold, then the frequency cannot be used. In this case the electronic circuitry changes the frequency and checks whether the new one is suitable for operation. The frequencies which are gone over are taken from a certain set of acceptable frequencies pre-selected by the developer, this operation goes on until a frequency is found on which the external signal amplitude is suitable for operation. In this case the band filter located after DAC should let through any frequency from the range selected for the frequency change. If all frequencies from this specified set are not suitable for operation, the device will not function. All analogue circuits of receiving and transmitting tracts should let through any frequency from the selected set of acceptable frequencies.

In the preferred embodiment the device contains one ADC and one amplifier before it; the coils are one by one connected to the amplifier input by a multiplexer. An alternative embodiment is possible where each coil has its own individual measuring tract and there is one ADC for each receiving coil in the system; the block diagram of the electronic module corresponding to this embodiment is depicted in FIG. 5. In this embodiment the more complicated hardware can provide for a faster measurement of all mutual inductions which will increase the speed of the device reaction to the user's actions. The developer can also keep the system reaction speed unchanged but increase the duration of the signal accumulation in order to improve signal/noise ratio.

In the preferred embodiment the functions Lcxij(x,y,z), Lcyij(x,y,z), LCzij(x,y,z) are measured in the finite set of points during calibration; these values are stored in the memory of the computing means. However, an alternative embodiment is possible when these functions are set analytically including the simplest embodiment when the formulae for dipole approximation are used.

In some embodiments with realization of a high-quality band filter it is possible to replace DAC with a timer which transmits a square-wave signal of the required frequency to the filter input. The band filter suppresses all frequencies except the basic one and the signal close to the sinusoidal is transmitted to the output.

As specified above in the preferred embodiment emitting coils are placed on the moving parts and receiving coils are placed on the body. However, it is also possible to place receiving coils on the moving parts and emitting coils on the body.

It is known from general physics that mutual induction has a property of Lij=Lji, i.e. mutual induction measured while the current is fed to the coil i and EMF is measured on coil j, equals the induction measured while the current is fed to the coil j and EMF is measured on coil i. Therefore it is not important for calculations how the mutual induction is measured, whether the receiving coils are located in the body and the emitting ones are located on the moving parts or vice versa.

Different methods can be used for mutual induction measurement. An alternative solution can be generation of a sinusoidal signal by the analogue method and measurement of the amplitude of the signal from the receiving coil on principles of synchronous detection.

Another alternative solution is signal summation according to formula (1) using analogue method with switched capacitor circuits. Switched capacitor circuitry is very popular in development of microelectronic solutions on crystals though it is not applied in practice for designing circuits with discrete components. A jump capacitor circuit input is connected to a receiving coil. At the specified moments of time a switched capacitor is connected to the circuit input and the voltage present at this moment on the input is saved in the form of the capacitor charge. Then the circuit performs analogue summation of the captured voltages according to formula (1), and the analog-to-digital conversion is made over the sum. It allows significant lowering of requirements for the analog-to-digital conversion speed which, in turn, allows conversion accuracy to be increased and power consumption to be reduced. In particular, a possibility to use a sigma-delta converter appears. The advantage of the sigma-delta converter is the wide dynamic range which is a requirement in this application. In this case we can do without a variable-gain amplifier.

The invention can be realized as plush toys in which the moving parts are made of plastic or hard foam rubber; the movement of these parts is limited. The described method is used for determination of mutual induction.

In this embodiment of technical solution realization, in the half of the limb located farther from the body, a part made of material resistant to deformation is installed with an emitting coil attached to it. This part performs functions of a moving part imitating second sections of the limbs 3 (see FIG. 1). The first section of the limbs does not have any hard parts and is made according to the standard technology used for plush toys. As in the preferred embodiment, according to the moving part position in the second section of the limbs, the first and the second section position is determined, except the rotation of these parts about own axis.

This embodiment of the device as a plush toy provides unique flexibility of the limbs which increases the toy's expressiveness if it is used to control a video-game character. Total absence of any rigid mechanical joints increases durability and service life of the device.

Another embodiment of the invention is possible as a robot capable of autonomous movement. The disclosed method of determination of position of the moving parts can be used for realization of feedback during control of the robot's manipulators i.e. for determination of position thereof for adjustment of the controlling effect on electro-mechanic component which performs movements.

In another embodiment, the robot can be equipped with additional sensors which make it possible to distinguish the user's touches from touching other objects. The robot allows the user to manipulate its limbs and tries to identify the command or the sense of the user's actions. For instance, placing of the robot's manipulators imitating the hands, into the boxer stance denotes the command to fight, whereas a friendly waving of the robot's manipulator denotes the command to be friendly with another robot. On the appropriate level of robotic technology it will be possible to make the robot perform dancing movements to the music.

Previously we have considered the possibility of determination of position of the first and second sections and the head relative to the body. Similarly it is possible to measure inclination of the device body.

For measurement of the inclination of the body 1 the device includes a special separately moving part 15 attached to the device body by guy lines 16. The body is not shown in FIG. 6; only the points where 17 is attached to the body are shown. This moving part 15 is placed inside the device body which excludes its exposure to any mechanical impact coming from the user or any objects. During inclination the moving part 15 and the coil 18 together with it are displaced by gravity from the equilibrium point. Accordingly after measuring the position of the coil 18 relative to the device body, the inclination of the device body relative to the vertical line can be determined.

To avoid mechanical oscillations of the coil 18 about the new equilibrium point, the guy line 16 material is selected in such a way that the mechanical energy of the coil travel is to the greater extent absorbed by the material instead of being accumulated in its deformation. It allows damping or considerable reduction of the oscillation amplitude and the coil rather “flows over” to the new position than oscillates about the new equilibrium point. Mathematical processing of the coil position data is also used; it determines the position of the new equilibrium point based on the coil trajectory and accordingly, gravity direction based on the fact that the mechanical properties of the system are known rather precisely.

Inclination determination is negatively influenced by jerks and other manipulations by the user. The same measured effect—displacement of the moving part—can be caused by an inclination as well as by a jerk. In the former case it is caused by rotation of the gravity vector relative the device body; in the latter case the displacement is caused by inertia. Based on the trajectory of the moving part it is possible to calculate only the summary force F which is the sum of two forces: gravity and inertia F=Fg+Fa.

Therefore special mathematical processing is required to distinguish inclinations.

The key difference between inertia and gravity is that in conditions in which the toy is used, the inertia average value vanishes when the averaging time is increased. Gravity has the opposite property; it does not depend on time and with a constant inclination the gravity average value equals the gravity value itself.

Another effective criterion for separation of inertia and gravity can be provided by the second time integral of the force which caused the displacement of the moving part from the equilibrium point. The double time integral of inertia is proportional to displacement in space during the integration time and for conventional operations with the toy cannot exceed several dozen centimeters per second, whereas the double integral of gravity is proportional to the second degree of the integration time and therefore rapidly increases with time.

Thus for determination of inclination the second integral of F force is calculated for the time of about one second, and it is assumed that the Fa component in it can be neglected. Also in assumption of a constant inclination the device inclination is calculated based on Fg.

The method of inclination determination can be used for detection of the device jerks (abrupt movements) for all three dimensions. Such jerk can be a conscious act of the user (player), and for example a jerk to the left can denote a command for the virtual character to jump off to the left. Mathematical processing of the coil position data can approximately determine the direction and the force of the jerk based on the coil movement trajectory.

The shortcoming of inclination determination and jerk detection is probably that the same measured effect i.e. displacement of the moving part can be caused by an inclination as well as by a jerk.

When we take into account the specifics of application in children's toys the differentiation between inclination and jerks is obvious in many practically useful cases. For instance in the embodiment of this method as an interactive doll it is required first of all to differentiate between the vertical position and the horizontal one whereas the time of the system reaction to inclination being several seconds is acceptable. An inclination close to 90 degrees within several seconds is equivalent to acceleration of the doll to the velocity of several dozen meters per second, and therefore it cannot be distinctly separated from any manipulations not connected with such inclination. That said, this method makes it possible to determine the rocking movement used by a mother putting a baby to bed; in this case the task of inclination/acceleration differentiation is not present. It is required to identify periodicity of movements and depending on the period and the amplitude of the movements, to react positively or negatively. The disclosed method of jerk detection makes it possible to detect the doll's falling to the floor or other instances of rough treatment.

A specialist skilled in modern methods of video-game design can select solutions for controlling the character which will compensate for the shortcomings of the disclosed method of jerk/inclination determination, and will simplify the task for the specialist dealing with mathematical processing of the data obtained from sensors.

Finally the jerk detection method can be used for toys inclination of which is not possible, e.g. for cars and trucks moved across the floor.

The described method of the body inclination angle measurement can be expanded to provide for detection of abrupt rotations of the body. This function can also be realized with the use of the moving part shown on FIG. 6. To reduce the moment of force transmitted to the line 15 during the device body rotation the guy lines 16 are attached to the moving part 15 as close as possible to the center of mass 19. The moment of inertia of the suspended moving part 15 is made maximum with other limitations of the device taken into account. It ensures that the coil 18 remains practically motionless or moves insignificantly relative to inertial frame at abrupt rotations of the body, therefore with a certain approximation the rotation of the body relative to the coil 18 can be considered as a rotation relative to the surrounding space. The coil rotation is determined by the method disclosed in this claim.

This method of the body rotation detection can be used to measure rotation about one, two, or three axes of the device. In order to do this it is necessary to design a suspension which will ensure a small moment transmitted to the moving part during rotation about any of required axes. FIG. 6 shows a solution which provides a small moment of force during rotation about any axis, but the depicted coil 18 is suitable only for measurement of rotation about any horizontal axis. With the shown position of the coil it is impossible to determine rotation about the vertical axis. For measurement of rotation about all three axes two coils are installed on the suspended moving part.

If the described method is used for detection of rotation about the horizontal axis, it supplements the described method of inclination determination based on displacement of the moving part from the equilibrium position by gravity. The method of determination of the body rotation about an axis can determine abrupt rotations well, whereas slow and long rotations are more difficult to determine by this method. The method of inclination determination based on displacement of the moving part from the equilibrium position on the contrary does not determine abrupt rotations but can well determine a medium inclination with duration of a second and more. A combination of these methods provides efficient monitoring of any inclinations. It is necessary to solve a standard problem of indirect measurement of one value (inclination) by means of two sensors which use different principles. This problem is typical for many fields of science and technology including processing of scientific experiment results, and may be solved by a skilled in the art.

Information on inclination in its turn makes it possible to determine jerks. Based on trajectory of the moving part movement the vector of the sum of gravity and inertia is determined. The gravity vector is known because the device inclination is known, therefore the difference of the determined vector and the gravity vector can be calculated, and this difference is the vector of inertia. The possibility of determination of device inclination as well as jerks and other manipulations connected with acceleration has enormous practical value for control of a character in video games and for other applications.

The described method of the body rotation detection can be used to measure rotation about the vertical axis; it is especially useful for controlling a character in video games where rotation of the real gaming device is transformed into rotation of the video-game character. The user can rotate the device about the vertical axis any number of times including a very large one. However, the guy lines twist during rotation and let the coil to make only a limited number of rotations relative to the device body (the cable going to the coil also limits the number of possible rotations). At reaching this limit the coil will rotate together with the body and further rotations of the body will not be adequately detected. This feature is the extreme manifestation of the more general shortcoming of the suggested measurement method; this method is optimal for detection of abrupt rotations to a small angle (up to 90 degrees) and is hardly suitable for determination of the angle of big rotations affected by suspension imperfection. This limitation is not that significant taking into account the fact that it is convenient for a person to rotate the toy without changing the grip, to an angle of several dozen of degrees. Rotation of the toy to bigger angles requires changing of the grip and therefore is less convenient.

Based on this the following method of game character control can be used. Rotation of the real character to the left or to the right corresponds to a command to rotate to the left or to the right, i.e. a deflection to a fixed angle corresponds to the virtual character rotation with the specified angular velocity and not to rotation to the specified angle. It is similar to joystick control when the joystick deflection sets the intensity of movement in the corresponding direction. Return of the device body to the initial position relative to the coil stops the rotation. The possible side effects connected with the device body rotation being detected relative to the coil inside it rather than to the room can be eliminated by mathematical processing and selection of rules for controlling the character in the game.

The described solution is an example of a general approach when the travel of the real toy is not identically reproduced by the virtual character. In this case the toy movement is just a controlling effect on the algorithm which according to a certain law transforms the controlling effect into the virtual character's action. Another example of this approach can be the game in which the control is performed by a virtual character of a magician, and a certain manipulation with the real toy causes manifestation of certain magic in the virtual world.

Besides the method of determination of inclinations and jerks (jumps) disclosed in this claim these functions can be also realized by an accelerometer, such as MEMS accelerometers by ANALOG DEVICES. This accelerometer indicates acceleration consisting of two components a=ag+am where am is the actual acceleration of the accelerometer in inertial frame, and ag is the component caused by gravity. Therefore the same problems of separation of inclination from jerks arise, as in the disclosed method of detection of the moving part displacement. An accelerometer provides a more accurate acceleration measurement and will help to determine device jerks and inclination more accurately.

The method based on measurement of the moving part displacement from the equilibrium point can have advantage of the lower cost price in comparison with the method which uses the accelerometer. Another advantage of the method based on displacement of the moving part is the possibility to determine the device rotation on the same moving part. Accelerometer is not enough for rotation determination; another means is required, e.g. a gyroscope, which leads to further increase of the device cost. In case of toys the price is rather important, and replacement of accelerometer/gyroscope with a simple mechanical device with an inductance coil can provide a significant competitive advantage.

Above there is a description of the embodiments of the disclosed device realization for games, which should not be regarded as a limitation of the patent claims of the invention. The described embodiments can have various changes and additions introduced, which are obvious to skilled in the art and which remain within the limits of protection of this invention.

Many alternatives are possible and will be appreciated by one of skill in the art upon reading the present specification. For example, one of skill in the art will appreciate that although in the depicted embodiments all three coils situated on any single block are positioned to have a common center point, it should be appreciated that many other configurations are possible. In some alternative embodiments, the coils are not centered on a common point in the manner depicted in the drawings, but rather are positioned with some distance between their center points.

In addition, other embodiments will now be described that offer a technical solution to a problem of position determination between multiple such toy devices, such as devices 100, 110 depicted in FIGS. 7 through 9. Such embodiments provide determination by one electro-mechanical device (e.g., having a toy form) of position and/or motion of travel of moving and/or stationary parts of another electro-mechanical device, e.g., between which there is no galvanic connection. These additional embodiments can be implemented with the use of emitting coils, receiving coils, and calculations of mutual induction (as described previously herein), or can be implemented using other forms of signal emitters and/or response generators, as will be appreciated by one of skill in the art upon reading the present specification.

In the preferred embodiment both of the devices 100, 110 have toy forms and are children's toys having a head and some number (e.g., four) of limbs. Both of the devices 100, 110 can use the principle of mutual induction measurement for measurement of position of their own limbs as well as of position of another toy's limbs based on the methods described previously herein, e.g., with reference to FIGS. 1 through 6. This can allow, for example, one toy to determine that another toy took it by the hand or stroked its head.

The embodiments described herein have applications in various moving toys or toy robots. If one robot knows the position of another robot and its limbs, interesting competitive games can be realized such as pursuits, battles, ramming. Thanks to the disclosed methods of determination of position of limbs of another symbol it is possible to equip some robots with artificial intelligence which will allow them to play a part of an opponent or an ally of the robot controlled by a person, even without those toys having a galvanic connection. Presently the usage of artificial intelligence in simple toys is complicated due to absence of cheap sensors which can provide artificial intelligence with the necessary information on actions of an ally or an opponent.

As an illustration of the type of applications that are possible with embodiments of the present invention, FIG. 11 depicts a duel between two robot dinosaurs. One of the dinosaurs attempts to bite the other dinosaur's tail. The attacking dinosaur determines a position of its opponent's tail and head, and adjusts its movements based on the determined position of its attacker. For example, the attacked robot can, based on the determination of its attacker's positions, attempt to dodge the attack and counteract.

In illustrative embodiments provided herein, coils or other emitting devices of different toys are energized on different frequencies to avoid interference with one another; all coils of a given toy are energized on the same frequency.

In the preferred embodiment the device in addition to measurement of position of its own limbs goes over frequencies following a certain algorithm and searches for a frequency on which a strong enough exterior signal is found. As soon as such frequency is found, an attempt is made to establish synchronization and to begin determination of movement of another device. If the attempt succeeds the device begins to trace the movement of the detected device, if it does not, it is assumed that the strong exterior signal on this frequency is interference and the search of such devices continues on other frequencies.

Besides detection of travel of moving parts of another device the offered solution provides data transmission from one device to another. Such data link is not just an additional useful result of the invention; it also improves the function of position determination. The device emitting a field can transmit some of its parameters, for example the magnitude of the magnetic moment of emitting coils. It eliminates the necessity to make all devices with identical emitting coils. The receiving device at first provides data reception from the transmitting device, then it receives the information on coils of the transmitting device, and finally it can determine the position of these coils.

The described method of determination of position of moving parts (limbs) of another device and of reception of the data therefrom, is dissymmetric. One device emits alternating magnetic field allowing determination of the position of its moving parts (limbs), and another device perceives this field and accordingly determines the position of the moving parts of the first one. Data transmission is also performed only in one direction i.e. to the device determining position. Such dissymmetric embodiments are quite possible when one device performs only the function of the field emission by the coils located on moving parts, and another one only determines the position of the first one and does not have any moving parts or emitting coils of its own at all. An example of such embodiment can be two manikins boxing in a ring. The ring determines the position of both manikins, keeps count, and comments the fight, while two persons compete manipulating the manikins and imitating a boxing match.

During interaction of two devices it is possible to apply this method in both directions, i.e. each device will perform functions of signal emission and reception. It will result in a symmetric scheme in which two devices emit a variable magnetic field each on its own frequency, and the field of each device is used for determination of position of moving parts by both devices. Accordingly the data are also transmitted in both directions.

Implementation of the symmetric embodiment or even of a more general case when a number of devices interact with one another can be fulfilled by a skilled in the art based on the disclosed dissymmetric method.

Tracing of the travel of separately moving parts of another device is realized similarly to tracing of the travel of the device's own parts. The basic difference is that the emitting coils belong to one device and the receiving coils belong to another one, and there is no galvanic connection between the two. Therefore in addition to that, several tasks have to be solved.

It is necessary to determine a time interval during which the certain coil of another device is emitting. It is done by detection of the fact of switching from one emitting coil to another; this is based on the following fact: the distance from receiving coils to different emitting ones is different. Therefore considerable changes in amplitude are detected at the moment of switching. Based on these edges on amplitude the moment of switching of emitting coils is determined.

In the preferred embodiment the coils are switched according to a fixed sequence and all coils emit for the same time interval. That is, the switching from one coil to another occurs with a specified interval. It allows calculation of the moments of subsequent switching after one detection of switching from one coil to another.

An example of transmission with phase modulation is shown below in Table I. The largest unit of data transmission—hypercycle—is shown in this picture in the form of a table. The data is transmitted symbol-by-symbol from left to right and from top to bottom. A hypercycle is divided into eight cycles; each cycle makes one line in the table. A cycle is divided into five words, which corresponds to five emitting coils in the preferred embodiment. Each word is transmitted by the corresponding coil and thus all coils are gone over within one cycle. A word consists of four symbols; each symbol transmits two bits of information because orthogonal phase modulation (QPSK) is used. An example of coding of a bit pair by a signal phase is given in Table I, below. The first symbol of each word contains a fixed value; these are used for identification of the beginning of a hypercycle, for identification of the transmitting coil. Another three symbols contain useful information; in all words of one cycle identical information is transmitted; i.e. only six bits of information are transmitted within one cycle.

In case of detection of own moving parts the received signal phase a priori is in a certain interval not exceeding 180 degrees, and it is this restriction that allows determination of the sign of the mutual induction. In case of detection of position of coils of another device such aprioristic information is not present. Carrier used for demodulation can be shifted on 180 degree from carrier on transmitter even after carrier recovery procedure.

Result of this shift is inversion of all coil direction vector obtained by disclosed procedure. Thus, to determine whether the signals are all inverted, it is verified whether the determined positions result in a physically possible or impossible configuration. Inversion of every signal is identifiable as it results in physically impossible configurations, whereas non-inversion results in physically possible configurations.

When position of own moving parts is detected, for each coil the time interval during which it emits is known, because position determination and signal formation to the emitting coil are performed by the same device. When position of coils of another device is detected, it is necessary to obtain information on emission intervals of each coil of that device. The method of detection of interval boundaries is given above; the only remaining task is to establish correspondence between intervals and coils. As it was mentioned, in the preferred embodiment the time interval of one coil emission coincides with the interval of transmission of one word. Also, there is a known correspondence between the number of the coil and the number of the word within the block during transmission of which the coil emits. Thus, when the moments of boundaries of words have been determined and the cycle beginning has been selected, it is possible to determine the intervals of transmission of each word and hence the time intervals of each coil's emission. For determination of the cycle beginning, service symbols contained in the transmission are used.

In case of determination of position of own separately moving parts the device is designed so that at any position a sufficiently strong mutual induction is provided for successful determination of position. In a typical case of a toy it means that sufficient mutual induction is provided even when the limbs are protruded as much as possible. In case of determination of position of moving parts of another device the typical situation is when some of the limbs are far from the receiving device body, the signal from the coils attached to these limbs is weak and it is impossible to determine their position. The preferred embodiment envisages a situation in which the position of only some of the limbs of the transmitting device is determined. In case of toys the most significant for the game are the limbs that are close; the position of these limbs can be detected, whereas the position of remote limbs is not important. Therefore each coil transmits its number which allows its identification even if the signal from that coil is the only one detected. In Table I, below, the service symbols of the second and the third cycle contain the number of the coil which emits the specified word.

Also in the preferred embodiment it is taken into account that the data from some emitting coils can be not received because of their remoteness, therefore all emitting coils transmit the same useful data. The reason for this is that in the preferred embodiment the first priority is mandatory transmission of the minimum amount of data containing first of all the identifier of the detected device and several numbers symbolizing its internal state. Therefore the data transmission rate is sacrificed in favor of realization simplicity. At the same time given the present state of the art realization of more complicated schemes of data transmission is possible.

In case of detection of own moving parts the synchronism requirement is met automatically, because both the ADC receiving the signal and the DAC producing the signal are clocked by one common generator. In case of detection of position of coils of another device these frequencies are received from different generators with some deviation of frequencies from nominal ones. It shows in the emitted signal phase drift relative to ADC counts. This phenomenon is typical for digital data transmission with the use of carrier modulation. As the preferred embodiment uses the orthogonal phase modulation, one of standard solutions known in the present state of demodulation technology, can be used. In terms of this section of technology this operation is called carrier recovery.

The offered technical solution provides determination by one electronic device of position and travel of parts of another electro-mechanical device with the use of the mutual induction principle.

Another example embodiment according to the present invention is depicted in FIG. 7. FIG. 7 illustrates a device 100 in a block diagram depicting various electronic components included therein or thereon. Although the device 100 is depicted in a block diagram in FIG. 7, the device 100 can have a toy form, e.g., as described herein and depicted in the example embodiments of FIGS. 1 through 3. The device 100 can include a control unit 102 and a plurality of signal emitters 104 coupled to the control unit 102. The control unit 102 can be coupled by a Galvanic connection to each of the plurality of signal emitters 104. The control unit 102 can be configured to activate each of the plurality of signal emitters 104 to generate one or more electromagnetic signals (e.g., waves). Accordingly, in illustrative embodiments, each of the plurality of signal emitters 104 can be configured to assume a transmission state (during which electromagnetic signals are not being emitted) and a non-transmission state (during which electromagnetic signals are being emitted).

The control unit 102 further can be configured in such a way as to only activate one of the plurality of signal emitters 104 at a time, and to activate all of the plurality of signal emitters 104 over a cycle (e.g., a repeating cycle). The cycle can switch between each of the plurality of signal emitters at a switching frequency. In illustrative embodiments, the switching frequency, which indicates an amount of time in which any one of the signal emitters 104 is in the transmission state (i.e., is emitting the one or more electromagnetic fields), is substantially uniform across the entire cycle and for all of the plurality of signal emitters 104. Thus, in an example embodiment having five signal emitters, the cycle occurs as follows: the control unit 102 activates a first signal emitter 104 for a predetermined amount of time, then deactivates the first signal emitter 104 and simultaneously activates a second signal emitter 104 for the same predetermined amount of time, then deactivates the second signal emitter 104 and simultaneously activates a third signal emitter 104 for the same predetermined amount of time, then deactivates the third signal emitter 104 and simultaneously activates a fourth signal emitter 104 for the same predetermined amount of time, then deactivates the fourth signal emitter 104 and simultaneously activates a fifth signal emitter 104 for the same predetermined amount of time.

The information (e.g., electromagnetic signals) transmitted over the cycle can be received by a second device 110. As with the first device 100, the second device 110 similarly can have a toy form. The second device 110 can include a response generator 112. The response generator 112 can be configured to generate an electrical signal in response to the electromagnetic signal transmitted by any one of the plurality of signal emitters 104. For instance, the electrical signal can be a voltage signal, a current signal, or any other suitable electrical signal, as will be appreciated by one of skill in the art upon reading the present specification. The response generator 112 can be logically coupled to a computing unit 114 that includes at least a processor 116 and a non-transitory computer readable storage device 118 logically coupled to one another. As further examples, the computing unit 114 can include at least one input device and at least one output device (not shown in FIG. 7). The computing unit 114 can be configured to perform one or more signal processing functions, e.g., in response to digital input received through the at least one input device from the response generator 112.

It should be appreciated that the computing unit 114 can be implemented according to any number of different computing environments utilizing a variety of combinations of hardware components. As one illustrative example, the computing unit 114 can be implemented according to the computing device depicted in FIG. 13 and described in greater detail herein.

For example, as depicted in FIG. 8, the control unit 102 can include a signal generator 106 (e.g., a function generator configured to generate a time-variable voltage signal, a time-variable current signal, etc.). The plurality of signal emitters 102 can include a plurality of emitting coils 108 (e.g., inductance coils). For example, the plurality of emitting coils 108 can be the emitting coils described previously herein with reference to FIGS. 1 through 6. In such example embodiments, the response generator 112 can include six receiving coils 120 (only three is drawn).

In such example embodiments as depicted in FIG. 8, the functions of one or more of the components in FIGS. 7 and 8 can be performed by a computer implemented system (e.g., as described with reference to FIG. 13 later herein). Accordingly, one or more signal converters can be included in the devices 100, 110, e.g., to enable conversion between analog signals and digital signals. For example, FIG. 9 depicts one example of a further embodiment including such signal converters and modulator units. The device 100 can include a modulator unit 122 for performing one or more digital modulations on a carrier signal based on a digital signal received from the signal generator 106. The modulator unit 122 can be implemented in the same computing environment or in a different, logically coupled computing environment as the signal generator 106. A digital-to-analog converter 124 can be coupled to the computing system of the modulator unit 122 for receiving the carrier signal having been modulated according to the input digital signal from the signal generator 106. The digital-to-analog converter 124 can be coupled to each of the emitting coil 108, e.g., by a multiplexer, or another switching circuit, as will be appreciated by one of skill in the art upon reading the present specification.

Accordingly, carrier signal, once converted into analog form, can be fed through one of the emitting coils 108 at a time. In illustrative embodiments, the modulating input signal that is received from the signal generator 106, is used by the modulator unit 122 to modulate the carrier signal, and is converted by the digital-to-analog converter 124 into an analog signal is a time-varying (e.g., alternating sinusoidal) current signal. The current signal produces a time-variable current in the emitting coil 108 currently being activated. This produces a time-variable (e.g., alternating) magnetic field. When the first device 100 and the second device 110 are placed proximate one another, the time-variable magnetic field produces a magnetic flux that induces a current in one or more of the receiving coils 120. The second device 110 can include analog-to-digital converters 126 (e.g., one for each of the receiving coils 120, only three is drawn), each of which receives an induced current signal from the receiving coils based on the induced current and converts the induced current signal into a digital format, which is then sent to the computing unit 114 for processing (e.g., demodulation, amplitude and phase determination, position determination of the emitting coil 108 producing the received induced current signal, etc.).

Accordingly, in this manner, the control unit 102 (e.g., the signal generator 106 and one or more switching mechanisms coupling the digital-to-analog converter 124 to the plurality of emitting coils 108) can activate each of the emitting coils 108 in a cycle. The cycles can be repeated a predetermined number of times, to form a “hypercycle” of data transmission. For instance, Table I (below) depicts an example hypercycle, in which orthogonal phase modulation is used to transmit data from one of the emitting coils 108 at a time.

TABLE I SIGNAL SIGNAL SIGNAL SIGNAL SIGNAL EMITTER 1 EMITTER 2 EMITTER 3 EMITTER 4 EMITTER 5 Cycle1 01 D D D 01 D D D 01 D D D 01 D D D 01 D D D Cycle2 01 D D D 10 D D D 11 D D D 00 D D D 01 D D D Cycle3 00 D D D 00 D D D 00 D D D 01 D D D 01 D D D Cycle4 00 D D D 00 D D D 00 D D D 00 D D D 00 D D D Cycle5 00 D D D 00 D D D 00 D D D 00 D D D 00 D D D Cycle6 00 D D D 00 D D D 00 D D D 00 D D D 00 D D D Cycle7 00 D D D 00 D D D 00 D D D 00 D D D 00 D D D Cycle8 00 D D D 00 D D D 00 D D D 00 D D D 00 D D D

In this illustrative embodiment, “00” corresponds to a phase of “0 degrees,” “01” corresponds to a phase of “90 degrees,” “10” corresponds to a phase of 180 degrees,” and “11” corresponds to a phase of “270 degrees.”

As depicted, data is transmitted in the hypercycle in a symbol-by-symbol fashion over time from left to right and from top to bottom. Accordingly, each step to the right in the sub-columns represents the passage of some predetermined amount of time. Similarly, each step down represents passage of some amount of time. Each step to the right in the columns (e.g., the column headers, “Signal Emitter 1,” “Signal Emitter 2,” etc.) represents passage of a predetermined amount of time that is equal to the switching interval for the cycle. In illustrative embodiments, the switching interval is constant across the entire hypercycle. In the example embodiment of Table I, the hypercycle includes eight complete cycles. Thus, each of the eight cycles forming the hypercycle occupies one full row in Table I. In illustrative embodiments, each cycle is divided into five “words,” each of the five words corresponds to one of the five coils. Each of the emitting coils 108 are activated during time interval of corresponded word. Each word is comprised of four “symbols” (e.g., four pulses or tones each representing an integer number of bits). In illustrative embodiments adapted for orthogonal phase modulation, each symbol represents two bits of information being transmitted from an emitting coil 108 to a receiving coil 108.

The first symbol of each word can include a fixed 2-bit value that is recognizable by the second device 110. For instance, the computing unit 114 of the second device 110 can include a database containing a plurality of identification information that can be used to match the first symbol of a word with various other information. For instance, the various other information in the database can enable the first symbol of each word to be recognized by the computing unit 114 as being both (a) an identification of a possible point at which the hypercycle can begin to be tracked by the computing unit 114, and (b) an identification of the particular emitting coil 108 from which the signal is originating. For example, regarding (b), the database can be a relational database that stores location information for each of the emitting coils 108 in the first device 100. The location information can include a particular portion (e.g., limb) of the first device 100 in which a particular emitting coil 108 is located, a particular position (e.g., in x, y, and z Cartesian coordinates) relative to the particular portion (e.g., limb) at which the emitting coil 108 is centered, etc. The remaining three symbols can contain useful information representing a remainder of the carrier signal as modulated by the modulating input signal generated by the signal generator 106.

Furthermore, in illustrative embodiments, first device transmits information recognizable to the second device 110 as an identification of the first device 100. For instance, consider that the first device could be a device having an alligator form with five limbs (two arms, two legs, and a tail) or a spider form with eight limbs (one for each leg). These two different devices (each of which could serve as the first device 100), have different numbers and placement of limbs, and further can have different placement of the emitting coils 108 within those limbs. Thus, to improve efficiency, first device can transmit a device identification to the second device 110 that enables the second device 110 to determine (e.g., by looking up in a database) information that is specific to that particular device (e.g., the number of limbs, etc.).

In illustrative embodiments, as depicted in FIG. 9, a separate channel is provided for each of the plurality of receiving coils 120. Each channel can include the receiving coil 120 itself, a signal amplifier (not shown), and an analog-to-digital converter 126. Alternatively, a multiplexer can be included for aggregating the received signals, as would be appreciated by one of skill in the art.

Accordingly, in illustrative embodiments, a plurality of signal processing functions are performed digitally by the computing unit 114 on the signals received from the plurality of channels (e.g., from the analog-to-digital converters 126). For example, FIG. 10 depicts a block diagram of an illustrative example of the signal processing that can be performed, according to certain embodiments of the present invention. As a brief overview, the signal processing functions performed by the system of FIG. 10 result in determination of: (a) the amplitude of the mutual inductance between each emitting coil 108 and each receiving coil 120, (b) the sign (e.g., by determining “inversion” or “non-inversion”) of each of the mutual inductances, and (c) the position of each of emitting coils 108.

As illustrated in FIG. 10, six analog-to-digital converters (ADCs) (e.g., the same number as the number of receiving coils 120) feed to quadrature demodulators (DM) a stream of digital data which in the digital form contains the induced electrical signal from receiving coils 120. The quadrature demodulators (DM) receive this stream at their inputs and produce quadrature components Q and I. These two quadrature components, Q and I, sum to form a complex number the amplitude of which reflects the amplitude of the signal received in the receiving coil 120, and the phase of which reflects the phase received in the receiving coil 120. Accordingly, the amplitude information is used by each of the DM blocks in order to generate an absolute value (i.e., an “amplitude”) of the mutual inductance between (a) the particular emitting coil 108 that produced the induced current and (b) each of the receiving coils 120 in which the induced current was generated.

In order to obtain a demodulated signal, a regenerated carrier signal is used which is produced by the carrier recovery block (CR). The task of the carrier recovery block includes to determine and output a carrier signal with a particular frequency and phase. The determined frequency should equal the frequency emitted by the emitting coils 108 of the device 100, the position of which is being determined. The determined phase should be such that the demodulated signal contains phases in multiples of 90 degrees (e.g., 0 degrees, 90 degrees, 180 degrees, 270 degrees). This task is standard for demodulation technology and can be solved by known methods.

The input data for the carrier recovery block (CR) includes the demodulated signals from all demodulation blocks (DM). In that regard, the scheme provided herein differs from classic modems in which there is only one demodulated signal. In an illustrative embodiment the strongest signal (with the maximum amplitude) is selected for carrier recovery and the remainder of the received signals are discarded. Thus, the function of the CR block is reduced to a case that is typical for demodulation.

Demodulated signals are also fed to a synchronization recovery block (SR). Accordingly, the task of this block (SR) is to determine the moments in time at which a switch has occurred from one emitting coil 108 to another emitting coil 108. Given that each of the words in a cycle lasts for a length that is equal to the time during which a single emitting coil 108 is in the transmission mode, the switching frequency can be used to determine the “boundaries” (e.g., the locations within the received signal) of each word in a cycle. The boundaries can be determined as time boundaries. The switching can be determined by recording and detecting edges in the signal amplitude, e.g., which are caused by the signal generator 106 switching from activating a first emitting coil 108 to instead activating a second emitting coil 108. Amplitude is different because of different position of emitting coils.

In illustrative embodiments, the SR block is configured to be in “synchronization established” or “synchronization absent” state at any given time. Some of the functions of the SR block can be performed only when the SR block has established synchronization and thus is in the “synchronization established” state. The SR block can be configured to switch between the two possible states in the following way. Specifically, since switching by the signal generator 106 from emitting coil 108 to emitting coil 108 (hereinafter referred to as “coil-to-coil switching”) occurs in fixed (i.e., constant) time intervals, detection by the SR block of coil-to-coil switching several times in a row with constant intervals results in the SR block switching to the “synchronization established” state. From this point on, other instances of switching between the emitting coils 108 can be accurately predicted by the SR block because such switching takes place at uniform intervals of time. When the SR block is in the “synchronization established” state, the block can produce a signal (22) that is output to several other blocks in FIG. 10 and which indicates to the other blocks that switching of the emitting coils 108 is occurring.

Operation of the SR block in the “synchronization established” state which will now be described in detail, as it proceeds for illustrative embodiments of the present invention. The SR block can have a self-correction mechanism. For example, if an amplitude edge (e.g., a drastic change) is detected at a time that is close to the time at which the SR block expects a switch in the emitting coils 108 to occur, then the difference between (a) the expected time of switching and (b) the detected time of switching is used to make corresponding, small adjustments of the signal (22) being output by the SR block. This enables the SR block to remain synchronized even if drift, etc. occurs. On the other hand, if an significant change in amplitude is detected by the SR block which is relatively far in time from the expected moment of switch, then such a change is simply ignored by the SR block with regard to updating the signal (22) being output. Finally, if (while in the “synchronization established” state) the CR block detects that an edges on amplitude repeatedly does not occur at several times when the switch was expected to have taken place, then the CR block reenters the “synchronization absent” state.

Operation of the CR block as descried herein increases interference immunity of the second device and enables it to operate with a maximum signal preservation. Accordingly, in the “synchronization established” state, neither false detection of coil switching nor a failure to detect switching when it has actually occurred leads to synchronization failure, as the CR block maintains the “synchronization established” state when singular instances of such operational failure occur. Rather, in order for the CR block to enter the “synchronization absent” state, several instances of such events/failures are required to be detected. When such repeated failures do occur, the CR block enters the “synchronization absent” state and ceases to produce a synchronization signal (22). In addition to generating the synchronization signal (22) that informs other blocks of the switching times, the CR block additionally records an identifying number of a word (hereinafter referred to as a cycle position or a “word number”) in a cycle that are received at the CR block from the DM block. Each word number corresponds to a different emitting cycle 108 (e.g., and can be stored as such in a database included in and accessible to the computing unit 114). Thus, by transmitting a combination of both (a) the synchronization signal (22) indicating switching times (e.g., moments in time when a switch has occurred), and (b) the identifying word number (or other suitable identification mechanism of the numbers and hence also the emitting coils 108), the CR block is able to indicate specifically which emitting coil 108 is being activated by the signal generator 106 at any given time. In illustrative embodiments, these two components (a) and (b) are transmitted by the CR block to a decoding (DC) block.

Accordingly, the DC block receives the synchronization signal and the word numbers. The decoding (DC) block additionally receives a demodulated signal (20) from each of the DM blocks. The DC block functions to regenerate the hypercycle (e.g., of Table I) by which the received information was transmitted from the first device 100, in the absence of interference and data about inversion(sign) of the current signals induced in the receiving coils 108. The DC block can utilize typical methods of digital information transmission that are well known in the art.

However, unlike conventional methods, illustrative embodiments provide that different emitting coils 108 transmit (e.g., in the form of a magnetic field that induces a current in the receiving coils 120) a different word (which is subsequently converted into a digital signal and demodulated). As a result of this fact, each word that is received has a different amplitude, some of which may be inverted. As will be appreciated based on the foregoing description by one of skill in the art, inversion of a received signal depends on orientation of an emitting coil 108 relative to a receiving coil 120. However, since in illustrative embodiments each channel and each DM and DC block is dedicated to a single receiving coil 120, whether the received signal is inverted can be determined using additional signal processing for each of the transmitting coils 120.

In order to obtain symbol synchronization coil switching signal is used because it is known that a word boundary corresponds to a symbol boundary, so start of new word is also start of new symbol.

In order to obtain hypercycle synchronization, the DC block analyzes the first symbol of each incoming word. If the phase information associated with the first symbol of a word having the same cycle position or word number in consecutive cycles coincides more than two times, then the DC block determines that the hypercycle is in one of the “last” cycles which only transmit six bits of identical information allowing the device 110 to identify the device 100. Once the DC block determines that the first symbol of a word having the same cycle position or word number in two consecutive cycles are separated by a y phase difference of +90°, then it is determined by the DC block that the hypercycle is in the first cycle (e.g., as depicted in Table I, above).

As described previously herein, the first symbol in each word has a fixed value that is known by the second device 110 (e.g., that is stored in a database contained in the computing unit 114 and retrievable). Therefore, it is possible to use this information to eliminate phase shifts between carrier signals emitting from the first device 100 and “received” signals induced in the second device 110. This enables the computing unit 114 to detect inversion for any given pair of emitting coils 108 and receiving coils 120. In illustrative embodiments, the computing unit 114 utilizes the stored information in order to determine whether the “received” signal is inverted. Once inversion detection is achieved for each combination of emitting coils 108 and receiving coils 120, the computing unit 114 begins recording measurements for the entire hypercycle.

However, in some embodiments, the DC block is not capable of distinguishing that every demodulated signal is inverted, e.g., as could potentially be caused by a shift in the carrier signal on receiving side by 180°. Such a 180° shift is not significant for data transmission, but it can pose a problem for position detection if not properly identified and corrected. In an illustrative embodiment, only a single carrier recovery (CR) block is included in the device 110, which enables the following mechanism for ensuring that such a 180° shift of every demodulated signal is properly accounted for. Specifically, in a later step of performing position calculation/determination of the emitting coils 108 (e.g., performed by an AD block, as described later herein), the computing unit 114 determines whether the determined positions result in a total positional configuration that is physically possible or physically impossible for the device 100. It will be appreciated by one of skill in the art that a 180 degree phase shift in all of the demodulated signals from the DM blocks will result in determined positions that are physically impossible for the device 100, as can determined by the computing unit 114. Thus, if the computing unit 114 so determines that, based on the non-inverted mutual inductance amplitude values generated by the DM blocks that the device 100 is in a physically impossible positional configuration, then the computing unit 114 simply inverts the sign of each of the phase values. One of skill in the art will appreciate that there are a variety of different ways to introduce this inversion in order to correct the sign of the determined mutual inductance.

The DC blocks transmit signals to the aggregation block (AG) indicating the determined signs of the mutual inductance values, as determined by comparing the phase information in the demodulated signal received from the DM blocks with fixed values of some symbols in hypercycle. More specifically, each of the DC blocks determines whether a 180 degree phase shift exists, and thereby determines if the amplitude of the mutual inductance value determined by its corresponding DM block is negative or positive in sign. So addition, the each DC block transmits a signal (24) indicating the presence or absence of inversion to the attitude determination block, which performs a determination of each emitting coil's position and attitude (AD).

The aggregation block (AG) is coupled to each of the DC blocks and combines the data from different channels. In particular, it receives demodulated data from each channel (e.g., each DC block) at its input. Over the course of a single cycle, each channel produces five variants of the received data, one for each emitting coil 108. Thus, over one full cycle, the AG block receives a total of thirty pieces of the data. Under ideal circumstances, each piece of data received at the AG block is perfectly identical to the original data transmitted at that moment by that particular emitting coil 108. However, in actual practice, the transmitted useful data can fail to be an accurate reflection of the transmitted data 100% of the time (e.g., due to device error, etc.). Moreover, many of the transmitted words or symbols can be absent, e.g., due to the some emitting coils failing to be in close enough proximity to induce a current in the receiving coils 120, etc. Under such circumstances, the AG block reviews the data and selects for aggregation only that data which is determined to be an accurate reflection of the initial signal transmitted by one of the emitting coils 108.

In some embodiments, the data will contain excessive amounts of interference-resistant coding that must be decoded prior to determining what information is and is not an accurate reflection of the initial signals. Accordingly, the AG block can decode the data received from the DC blocks, preferably in a non-aggregated form. The AG block thus can be configured to compare the thirty variants of information and discard signals that resulted in deviant phase information from the remainder of the group of variants. If the remaining variants have phase information that do not match one another, then these remaining variants can be discarded as well. On the other hand, if the remaining variants of the received data provide phase information that is identical (i.e., that is matching within the set of remaining variants), then the corresponding amplitude values for these remaining variants is utilized in subsequent calculations for determining the positions of each of the emitting coils 108.

In addition to obtaining of transmitted data the aggregation block performs another important function: it adjusts correctness of count of the number of a word in a cycle by the synchronization recovery block (SR). The synchronization recovery block cannot determine the beginning of a cycle, thus, immediately after entering the “synchronization established” state, the number produced by the synchronization recovery block may not match the actual number of a word in a cycle (i.e., may not actually match the true cycle position or word number). As described previously herein, the AG block obtains thirty variants from the DC blocks, and due to the SR block tracking the cycle position or word number of the transmitted words, each variant of the data received by the AG block is associated with a specified or cycle position or word number. While the payload information (e.g., determined by the DC blocks) must to be identical in each variant, the service information (fixed first symbols of words) is different. In illustrative embodiments, the identification of the particular emitting coil 108 as the originator of a particular received signal is encoded in the first symbol of each of the second and the third cycles in the hypercycle. Therefore, using this identifying information, the AG block can determine the difference between (a) the cycle position or word number of a given word as produced by the SR block and (b) the actual cycle position or word number of that given word as hardcoded in the signal (e.g., and as recognizable to the computing unit 114 by searching through a database included in the computing unit 114). This allows the AG block to generate an adjusting signal (26) which is transmitted to the SR block. The SR block uses the adjusting signal (26) to adjust the signal that it outputs to accurately reflect the true cycle positions or word numbers of words, as based on the identification of the emitting coil 108 contained in the transmitted signal.

The attitude determination block (AD) determines the position of emitting coils of the device 100. The following inputs are used to conduct these position determinations: (a) the data from demodulators (DM) containing amplitudes of mutual inductances as determined by the demodulated quadrature components based on the current induced in each of the receiving coils 120; (b) the signals from the synchronization recovery block (SR) of the moments of switching of the emitting coil 120 and the identification of the emitting coil 120 that is emitting at any given moment; and (c) the signal (24) containing the signs of the mutual inductances as determined by decoding blocks. When information about the beginning and the end of an interval of emission of a certain emitting coil 108 is received from the synchronization recovery block by the AD block, the AD block begins averaging amplitude values being received from each demodulator block and thus to obtain the average signal amplitude in all receiving coils for a given emitting coil, e.g., which is used to generate a total mutual inductance value. Within one cycle all emitting coils 108 are one by one switched to emit and as a result, one full cycle produces a complete set of amplitudes of mutual inductances of each transmitting coil with each receiving one. This set initially has no signs, but as described herein, the signs are received from the decoding block, and all decoding blocks in combination produce a complete set of signs of the various mutual inductances. Based on the complete set of mutual inductances with the complete set of signs, the position of each emitting coil 108 can be determined, e.g., as described previously herein, and similarly to how position determination is performed by a single device for its own emitting coils 108.

As described previously herein, block DC provides data which could all be correct or could all be inverted (i.e., in sign). Thus, to determine whether the signals are all inverted, the DC block, subsequent to determining the position of each emitting coil 108, determines whether the determined positions result in a physically possible or impossible configuration.

Inversion of every signal is identifiable as it results in physically impossible configurations, whereas non-inversion results in physically possible configurations. Accordingly, if the block AD determines that the determined positions result in a physically impossible configuration, then the block AD inverts each of the signs received from the DC blocks and repeats the determination of the position of each of the emitting coils 108.

FIG. 11 depicts an overview of the method by which the computing system 114 can perform one or more signal processing functions described in detail with reference to of FIG. 10. The electrical (e.g., current) signal induced in the receiving coils 120 can be converted into digital format, e.g., by the ADCs (step 200). The switching frequency can be determined, e.g., by block CR and block SR in combination (step 202), and in so doing, synchronization can be established. The amplitude of the mutual inductance can be determined, e.g., by block DM (step 204). In illustrative embodiments, a value of the amplitude is determined for each electrical signal induced by each receiving coil 120 in response to each emitting coil 108 being activated by the signal generator 106. The sign of each value of the mutual inductance can be determined, e.g., by block DC (step 206).

Finally, the positions of each of the emitting coils 108 can be determined, e.g., by block AD (step 208). In illustrative embodiments, the positions generated in step 208 are determined based at least in part on the signs determined in step 206 and the amplitudes determined in step 204.

The determined positions can be used in any of the ways previously described herein, and as will be appreciated by one of skill in the art. For instance, the determined positions can be transmitted (e.g., wirelessly) to a gaming console for producing an image on a presentation device (e.g., a television) coupled to an output device of the gaming console. Furthermore, the determined positions can be input into one or more reaction algorithms that automatically generate electrical signals that activate electronic mechanical components in such a way as to react to the determined positions. One of skill in the art will appreciate a wide variety of other ways to utilize the determined positions to enable other additional features.

Many alternatives are possible. In illustrative embodiments, the emitting coils 108 are located in movable limbs of the toy form, and the receiving coils 120 are located in the body or central portion of the toy form to which the movable limbs are movably coupled. Furthermore, in illustrative embodiments, each of the devices 100, 110 includes a set of emitting coils 108 and a set of receiving coils 120, such that each device 100, 110 is able to perform determinations of both (a) the positions of its own limbs relative to its own body, and (b) the positions of the limbs of the other device 110, 100 relative to its body. Given that both the receiving coils 120 and the emitting coils 108 can be implemented as inductance coils, some embodiments provide that some or all of the receiving coils 120 (or alternatively, some or all of the emitting coils 108) are used both emitting coils 108 and receiving coils 120), e.g., by switching temporarily between emission mode and reception mode.

In the preferred embodiment the emitting coils 108 are switched to the transmission mode in turn (e.g., one at a time) and in a cycle. However, it is also possible for more than one (e.g., all) of the emitting coils 108 to simultaneously emit a time-variable (e.g., alternating) magnetic field each driven by a time-variable (e.g., alternating) current having a different frequency. For example, channels that are divided based on time instead can be replaced by channels divided according to frequency, e.g., as in a radio broadcast. Furthermore, combinations of temporal and frequency channel division configurations are also possible.

In the preferred embodiment orthogonal phase modulation (QPSK) is used, as it is one of the simplest embodiments of quadrature amplitude modulation (QAM). Given the present state of the art, it is possible in the disclosed methods to use the general case of the quadrature amplitude modulation. This can be effective, for example, in providing an increase in data transmission. Such embodiments can include additional data transmission from the DC block to the attitude determination block, in order to supply the AD block with both the sign of the determined mutual inductance values and also a decoded symbol. By providing the AD block with the decoded symbol from the DC block, the amplitude of the emitted signal can be determined, which can enable determination of the mutual induction, which can enable determination of position of the emitting coils 108.

Besides the amplitude-phase modulation many other modulation techniques can alternatively or additionally be used. Without selection of specific modulation it is impossible to describe the functioning of a device in detail. However, one of skill in the art will readily appreciate a variety of changes that can be used to implement different types of modulation, such as combining various blocks depicted in FIG. 10. For example, the demodulator block can be integrated with decoding block. Similarly, the tasks of decoding a word from the ADC and decoding a signal indicating the time boundaries of the words (e.g., the switching interval) and symbols can be integrated. Both initial sequences output by the ADC and the decoded words output by the decoding blocks can be fed to the attitude determination block for additional signal processing. Based on the decoded words, it is possible for the computing unit 114 to determine the form (e.g., modulation form) of the signal transmitted by any given emitting coil 108 and, knowing that form, it is possible to calculate the mutual induction value. In such embodiments, the carrier recovery block can be excluded altogether from the device 110, or its functions can be performed by the integrated demodulator and decoding blocks. As yet another possibility, the functions of the CR block instead can be modified based on the selected modulation type.

In illustrative embodiments, each emitting coil 108 transmits identical data. However, in other embodiments, each emitting coil 108 can transmit only its respective portion of the data. This can be beneficial, for example, in enabling an increase in the data transmission rate. However, this can be detrimental in some instances, as an operational or other failure by one of the emitting coils 108 in transmitting its portion of the data will result in irrevocable loss of that data. However, it is necessary to consider the fact that in the selected scheme the range of data transmission is much larger than the range of position determination. That is because for attitude determination the signal/noise ratio has to be significantly higher than the one required for stable reception of phase modulation. Therefore in many cases it is possible to ensure that during interaction another device stays entirely within the radius of stable reception and if some of its moving parts are far enough for determination of their position to become impossible, the data can still arrive

In yet another embodiment, a single set of inductance coils switches between two modes. In a first mode, every coil transmits identical data, and in a second mode, every coil transmits only a portion of the data. When the two communicating devices 100, 110 are on the boundary of a stable reception zone or radius, such embodiments can be configured to provide a small data stream (e.g., can automatically reconfigure into whichever of the two modes operates at a lower transmission rate). On the other hand, when the two devices 100, 110 are within close proximity of one another, they can automatically reconfigure into the mode that enables higher transmission rates, thereby allow a larger data stream to be communicated therebetween.

FIG. 13 illustrates an example computing device 500 within an illustrative operating environment for implementing illustrative methods and systems of the present invention. The computing device 500 is merely an illustrative example of a suitable computing environment and in no way limits the scope of the present invention. A “computing device,” as represented by FIG. 13, can include a “workstation,” a “server,” a “laptop,” a “desktop,” a “hand-held device,” a “mobile device,” a “tablet computer,” or other computing devices, as would be understood by those of skill in the art. Given that the computing device 500 is depicted for illustrative purposes, embodiments of the present invention may utilize any number of computing devices 500 in any number of different ways to implement a single embodiment of the present invention. Accordingly, embodiments of the present invention are not limited to a single computing device 500, as would be appreciated by one with skill in the art, nor are they limited to a single type of implementation or configuration of the example computing device 500.

The computing device 500 can include a bus 510 that can be coupled to one or more of the following illustrative components, directly or indirectly: a memory 512, one or more processors 514, one or more presentation components 516, input/output ports 518, input/output components 520, and a power supply 524. One of skill in the art will appreciate that the bus 510 can include one or more busses, such as an address bus, a data bus, or any combination thereof. One of skill in the art additionally will appreciate that, depending on the intended applications and uses of a particular embodiment, multiple of these components can be implemented by a single device. Similarly, in some instances, a single component can be implemented by multiple devices.

Numerous modifications and alternative embodiments of the present invention will be apparent to those skilled in the art in view of the foregoing description. Accordingly, this description is to be construed as illustrative only and is for the purpose of teaching those skilled in the art the best mode for carrying out the present invention. Details of the structure may vary substantially without departing from the spirit of the present invention, and exclusive use of all modifications that come within the scope of the appended claims is reserved. It is intended that the present invention be limited only to the extent required by the appended claims and the applicable rules of law.

It is also to be understood that the following claims are to cover all generic and specific features of the invention described herein, and all statements of the scope of the invention which, as a matter of language, might be said to fall therebetween. 

1. A gaming device which includes a body and at least one moving part coupled with the body, a computing means, and a device controlled by the computing means which provides the effect perceivable by the user, distinguished by the fact that in the said at least one moving part there is at least one inductance coil attached to it; also at least one inductance coil is attached in the body; the device is equipped with a means of measurement of mutual induction between the coils which is connected to the computing means which is designed for determination of mutual position of the specified inductance coils based on mutual induction values received from the specified measurement means, and which is connected with a device designed for creation of effects perceivable by the user and based on information on mutual position of inductance coils.
 2. A gaming device as in item 1 distinguished by the fact that it designed with a capability to determine five degrees of freedom of the moving part with only one coil located on the moving part and ignoring rotation of the moving part about the coil axis.
 3. A gaming device as in item 1 distinguished by the fact that it has a double-section design of the limbs in which the first section is connected to the body and the second section is connected to the first section; at least one coil is installed in the second section of the limbs, and the computing means design includes the capability to determine the position of the first section of the limbs based on the known position of the second section ignoring rotation of the first section about the line connecting its two attachment points.
 4. A gaming device as in item 2 distinguished by the fact that the moving part has an axis the rotation around which is not significant from the point of view of formation of the effects perceivable by the user, and the coil is positioned in such a way that its axis coincides with or is parallel to, the said axis of the moving part. 5-6. (canceled)
 7. A gaming device as in item 1 distinguished by the fact that the travel of the moving part relative to the body is limited in such a way that its position can be completely determined by means of one coil.
 8. A gaming device as in item 7 distinguished by the fact that it is designed in the shape of an anthropomorphic or zoomorphic object where the coil is installed in the moving part—the head—in such a way that its axis is directed from the crown to the nose, and the mechanical construction of the neck allows rotation of the head about this axis only together with coil travel. 9-11. (canceled)
 12. A gaming device as in item 1 distinguished by the fact that the created effects include at least one of the following: sound, light, autonomous movement of at least one moving part, speech, and/or mimic imitation.
 13. (canceled)
 14. A gaming device as in item 12 distinguished by the fact that that its design provides the possibility to adjust the movement of the moving part with the use of a feedback signal formed based on the information on the position of this part.
 15. A gaming device as in item 1 distinguished by the fact that it is equipped with additional means which determine and differentiate touching thereof by the user's hands from impact of inanimate objects.
 16. A gaming device as in item 12 distinguished by the capability to detect initiation, adjustment, counter-action by the user in regard to the autonomous movement of the device, with changes in subsequent behavior applied according to the specified algorithm.
 17. (canceled)
 18. A gaming device as in item 1 distinguished by the fact that its design provides the possibility to determine the character of the user's manipulations with the body based on the trajectory of the movement of the moving part related to the body under the influence of gravity and inertia. 19-24. (canceled)
 25. A gaming device as in item 1 distinguished by the fact that it is physically divided into a controlling part which includes a body and moving parts in which coils and a means of measurement of mutual induction between coils are located, and a controlled part which includes a means designed for creation of effects perceivable by the user, and a computing means is located in the controlling part or in the controlled part; both parts contain means for communicating with one another via communication channel.
 26. A gaming device as in item 25 distinguished by the fact that the controlled part is the means for playing the video games, and control of one of the game characters is performed through manipulation with the controlling part. 27-29. (canceled)
 30. A system of two or more toy devices, the system comprising: a first device comprising at least one inductance coil situated in or on the device a signal generator coupled to the at least one inductance coil and capable of producing a time-variable current in the inductance coil to emit variable magnetic field a second device that is separate from the first device, the second device comprising: two or more inductance coils stationary fixed in or on the device, the coils configured to have a electromotive force induced by magnetic field emitted by the at least one inductance coil of the first device a measurement means for measuring of mutual inductance between the at least one inductance coil of the first device and every of the two or more inductance coils of the second device a computational means coupled to the said measurement means and capable to determine spatial position of the first device relative to the second device by determining spatial position of the at least one inductance coil of the first device relative to the two or more inductance coils of the second device, the position determination based on mutual induction values measured by the said measurement means at least one effecting means coupled to the first toy device or to the second toy device, the effecting means capable to produce effects perceivable by a user.
 31. The system of claim 30 in which the first device comprises at least two portions, moveably coupled to each other or to a third portion, each of the at least two portions comprising at least one inductance coil.
 32. The system of claim 30 in which at least one moveable portion of the first device comprises only one emitting inductance coil, and the second device comprises five or more inductance coils configured to enable determining spatial position of the said moveable portion of the first device with five degrees of freedom, while turns around the coil's axis or inversion of the coil direction vector are not determined.
 33. (canceled)
 34. The system of claim 30 in which inductance coils of the first device are switched to the same signal generator, each of the said coils emits at the same frequency with predetermined time-variable phase shift relative to a reference frequency, and the computational means of the second device determines whether all direction of coils vectors right or for all coil detects inverted direction.
 35. The system of claim 34 in which the first device comprises at least one moveable portion, the portion comprising at least two eccentric inductance coils with fixed position each to another, and the second device uses information about relative position of said two coils, to detect case then inverted direction is obtained, and correct direction vectors of all coils.
 36. (canceled)
 37. The system of claim 30 in which the second device has at least one additional portion moveably coupled to the second device, the additional portion comprising at least one emitted inductance coil coupled to signal generator, and the means of the second device are capable for determining spatial position of the said additional portion relative to the second device. 38-40. (canceled)
 41. The system of claim 30 in which the second device recognizes starting or stopping emitting by coil or switching from one emitting coil to another one by fast changing of amplitude in receiving signal 42-44. (canceled) 